M400

var step = -0.04

if exists(global.xcomp_mode) && global.xcomp_mode != "manual"
  set global.xcomp_mode = "manual"

if exists(global.xcomp_manual)
  set global.xcomp_manual = {global.xcomp_manual + var.step}
else
  global xcomp_manual = var.step

; Update xcomp_manual.g to save the new value
echo >"0:/user/xcomp_manual.g" "if exists(global.xcomp_manual)"
echo >>"0:/user/xcomp_manual.g" "  set global.xcomp_manual = "^{global.xcomp_manual}
echo >>"0:/user/xcomp_manual.g" "else"
echo >>"0:/user/xcomp_manual.g" "  global xcomp_manual = "^{global.xcomp_manual}

; Update xcomp_mode.g to save the mode
echo >"0:/user/xcomp_mode.g" "if exists(global.xcomp_mode)"
echo >>"0:/user/xcomp_mode.g" "  set global.xcomp_mode = ""manual"""
echo >>"0:/user/xcomp_mode.g" "else"
echo >>"0:/user/xcomp_mode.g" "  global xcomp_mode = ""manual"""

echo "Mode changed to manual. RHS of Build Plate adjusted up to "^{global.xcomp_manual}^"mm and saved."